AWS Solutions Architect - Associate (SAA) 學習計畫與備考心得: Module 2


Posted by Hans-Tsai on 2023-04-08

目錄

  1. Module 2 Student Guide
  2. Section 1: Introducing Cloud Architecting
  3. Section 2: The AWS Well Architected Framework
  4. Section 3: Best Practices for Building Solutions on AWS
  5. Section 4: AWS Global Infrastructure
  6. Module 2 Wrap-up


    註: 超連結為 AWS Academy 的課程連結,需先註冊帳戶後,才能觀看課程錄影

重點摘要

Section 1: Introducing Cloud Architecting

課程目標

  • 說明什麼是雲端架構(cloud architecture)?
  • 說明該如何利用 AWS Well-Architecture 來設計和評估雲端架構?
  • 說明該如何利用 AWS 雲端服務來達成最佳實踐(best practices)?
    • AWS large architecture 參考圖
  • 說明該如何明智地決定出要將 AWS 資源(resources)放到哪個區域?

Amazon Web Services (AWS) 起源與痛點

  • 起源:
    • 在大約西元 2000 年,Amazon 從電商服務起家,當時他們希望第三方賣家能在 Amazon ecommerce engine 上建立自己的線上購物網站,但這些第三方賣家不知道該如何設計出高可用的(highly available)、可擴充的(scalable)線上購物網站
    • 根據 AWS CEO - Andy Jassy 的描述,他覺得當時的 Amazon ecommerce tools 根本是一場混亂! 原因是應用程式(applications)、系統架構(architecture)在建置過程中,並未經過適當的規劃,因此難以將各個服務各自抽離出來
      • 解決方案: Amazon 建立出一系列具備完整文件說明(well-documented)的 APIs,這些文件在未來也成為 AWS 雲端服務的公司標準
    • 但 Amazon 依然面對一個問題,該如何快速地建置應用程式、基礎設施? 在過去建置資料庫、伺服器、儲存空間...等各個元件都會需要大約 3 個月的時間來完成,並且每個團隊僅會建置自己的資源,並未考量到可擴充性(scalability)、可重用性(reusability)
      • 解決方案: 從西元 2006 開始,Amazon 推出自家的雲端服務 --- Amazon Web Services (AWS),基於 Amazon 基礎設施來提供高可用(highly available)、可擴充(scalable)、可靠的(reliable)雲端服務,並透過販售這些雲端服務來獲利
  • 什麼是雲端架構(cloud architecture)?
    • 利用雲端服務的特色、功能來達成組織的技術需求、商業使用案例
    • 合作模式: 客戶(Customer or Decision maker) => 雲端架構師(Cloud Architect) => 開發工程師(Developer)
      • 客戶: 負責提出商業、技術的目標與需求,並決定最後該採用哪個解決方案
      • 雲端架構師:
        • 與客戶討論出有哪些商業、技術目標需要達成或改進
        • 與開發工程師團隊合作,確保交付出的成品能滿足客戶需求的
      • 開發工程師: 實際開發出成品、實作出解決方案

Section 2: The AWS Well Architected Framework

AWS Well-Architected Framework

  • 是一個幫助我們建置出最安全(secure)、高效能(high-performing)、有彈性(resilient)、符合成本效益(cost-efficient)的雲端應用程式。這是 AWS 基於上千個客戶案例後,所制定的指導方案,在官方文件中,我們可以找到關於 AWS well-architected framework 六大本柱的詳細說明、最佳實踐方式,以下我們會逐一介紹這六大本柱的精神
  • 安全性(Security)
    • 目標: 我們需要透過風險評估、緩解策略(itigation strategy)來保護客戶的資訊、系統、數位資產...等
    • 原則:
      • 強大的身份識別基礎
      • 可被追蹤的
      • 系統架構的每一層級都需要考量到其安全性
      • 自動化地實踐安全性原則的最佳實務
      • 在任何時候,都要保護客戶資料
    • 參考連結: 官方文件: Security Pillar - AWS Well-Architected Framework
  • 卓越營運(Operational Excellence)
    • 目標
      • 當我們運行一個系統時,需考量到維運流程,以及如何交付其商業價值,必須能根據客戶營運需求,持續優化維運流程
      • 當我們在設計一個流程時,需考量到未來該如何部署(deployed)、更新(updated)、維運(operated)? 可以透過日誌(logging)、儀表板、其他商業與技術相關數據,來決定該如何設計流程?
      • 在 AWS 所有的雲端服務中,都是元件都是透過程式碼來建置、更新、部署的(Infrastructure as Code, IaC),因此任何一位工程師只要遵循這些程式碼操作,都能建置出相同的服務
    • 原則
      • 能夠監控系統執行的過程
      • 持續優化部署、更新、維運的流程
    • 參考連結: 官方文件: Operational Excellence Pillar - AWS Well-Architected Framework
  • 可靠性(Reliability)
    • 目標
      • 在面對系統終止 or 服務中斷時,能動態地獲取相對應的資源,來減輕對客戶的衝擊
      • 相比於傳統的基礎設施環境,雲端服務能夠提供具備高可用性(high availability)、可容錯性(fault tolerance)、全域冗餘性(overall redundancy)
    • 原則
      • 能夠快速地修復系統終止 or 服務中斷
      • 能動態地獲取相對應的資源(computing resource),來達成客戶需求
      • 減輕突發事件對客戶的衝擊 (e.g. 基礎設施 or 服務的錯誤設定、短暫的網路中斷問題)
    • 參考連結: 官方文件: Reliability Pillar - AWS Well-Architected Framework
  • 性能效率(Performance Efficiency)
    • 目標
      • 我們希望能將所有的資源使用率用到最高,並且能隨著客戶需求的變動,能夠動態地調整所需的資源量
      • AWS 雲端服務能夠幫助客戶處理關於建置基礎設施、服務的複雜技術問題,讓客戶們能夠專注於他們的核心商業模式上
      • 機械同情(mechanical sympathy): 當我們選擇使用某個工具 or 系統時,必須知道該如何將其效益發揮到最大? 舉例來說,當我們選擇資料庫 or 儲存空間時,需考量到在未來該如何有效存取這些資料?
    • 原則
      • 選擇最有效率的資源使用方式,並能隨著客戶需求動態地調整
      • 交給 AWS 雲端服務來處理基礎設施、服務的複雜技術問題與維運
      • 採用 機械同情(mechanical sympathy)原則
    • 參考連結: 官方文件: Performance Efficiency Pillar - AWS Well-Architected Framework
  • 成本優化(Cost Optimization)
    • 目標
      • 對於客戶來說,成本優化是很重要的,它是一個持續迭代(iterative)的流程,在整個系統生命週期中,都必須持續優化、改進
      • 所謂成本優化,是根據客戶的目標、需求,來移除不必要的開支。可利用 AWS 雲端服務來託管,因為這些服務都是基於雲端規模所建置的,對於客戶的每一筆交易 or 服務請求的花費,都會相比客戶自建,來得更便宜
    • 原則
      • 衡量成本效率
      • 去除不必要的開支
      • 考慮使用 AWS 雲端服務
    • 參考連結: 官方文件: Cost Optimization Pillar - AWS Well-Architected Framework
  • 永續性(Sustainability) --- (截至 2023/04 月新增的第六大本柱)
  • 參考連結: 官方文件: AWS Well-Architected Framework

雲端服務: AWS Well-Architected Tool

  • 介紹: 在 AWS 雲端服務的後台管理介面中,我們可以利用這個工具,透過以下幾個步驟來檢視我們的雲端架構,與最新的 AWS 雲端架構最佳實踐版本,有哪些差異? 並提供一系列的步驟來協助優化我們的雲端架構
    • Step 1: 定義工作流程
    • Step 2: 執行雲端架構面的評估
    • Step 3: 應用 AWS 推薦的最佳雲端架構實務
  • 圖解:
  • 參考連結: 官方文件: AWS Well-Architected Tool

Section 3: Best Practices for Building Solutions on AWS

  • 在設計雲端架構解決方案時,我們可以參考過去經驗的歷史資料來設計。同時,我們需要考量客戶的目標(e.g. 優先考量新功能的上市速度,而不是成本)、對客戶的影響
  • 在設計雲端架構解決方案時,我們也必須權衡各個面向,來制定最佳策略
    • 交易一致性(trade consistency)
    • 持續性(durability)
    • 用空間換取更低的時間延遲(latency),來獲得更佳的效能

#aws #SAA







Related Posts

原子習慣:法則 2 - 讓習慣有吸引力

原子習慣:法則 2 - 讓習慣有吸引力

 JS 學習筆記 : Set & Filter

JS 學習筆記 : Set & Filter

[筆記]ASIC Flow 01-ASIC是什麼?

[筆記]ASIC Flow 01-ASIC是什麼?


Comments